const staff = require('../../utils/user');
const request = require('../../utils/request.js'); 
Page({
  data: {
    // 被访信息
    roomList: null, // 房间列表，可根据需求动态设置
    roomValue: "",          // 选中的房间
    startTime: "",          // 访问开始时间
    endTime: "",            // 访问结束时间

    // 访客信息
    visitorPhoto: "",       // 访客照片临时路径
    visitorName: "",        // 访客姓名
    phone: "",              // 手机号
    idCard: "",             // 身份证号
    carPrefix: "",          // 车牌号前缀（如“京”）
    carNumber: "",          // 车牌号后6位
    showNewTag: false,      // 是否显示“新”标签

    // 备注
    remark: "",              // 备注信息
    //来源
    source:"物业端",
    staffId:null
  },

  // 选择房间
  onRoomChange(e) {
    const room = this.data.roomList[e.detail.value];
    this.setData({ roomValue: room });
  },

  // 选择开始时间
  onStartDateChange(e) {
    this.setData({ startTime: e.detail.value });
  },

  // 选择结束时间
  onEndDateChange(e) {
    this.setData({ endTime: e.detail.value });
  },

  // 选择访客照片
  chooseImage() {
    wx.chooseImage({
      count: 1,
      sizeType: ["original", "compressed"],
      sourceType: ["album", "camera"],
      success: (res) => {
        this.setData({ visitorPhoto: res.tempFilePaths[0] });
      },
    });
  },

  // 访客姓名输入
  onVisitorNameInput(e) {
    this.setData({ visitorName: e.detail.value });
  },

  // 手机号输入
  onPhoneInput(e) {
    this.setData({ phone: e.detail.value });
  },

  // 身份证号输入
  onIdCardInput(e) {
    this.setData({ idCard: e.detail.value });
  },

  // 车牌号前缀输入
  onCarPrefixInput(e) {
    this.setData({ carPrefix: e.detail.value });
  },

  // 车牌号后6位输入
  onCarNumberInput(e) {
    this.setData({ carNumber: e.detail.value });
  },

  // 备注输入
  onRemarkInput(e) {
    this.setData({ remark: e.detail.value });
  },

  // 取消按钮
  onCancel() {
    wx.navigateTo({
      url: '/pages/visitemanager_lxy/visitemanager_lxy',
    })
  },
  onBack() {
    wx.navigateTo({
      url: '/pages/visitemanager_lxy/visitemanager_lxy',
    })
  },

  // 提交按钮（示例：仅打印数据，实际需调用接口上传）
  onSubmit() {
    const { 
      roomValue, startTime, endTime,
      visitorPhoto, visitorName, phone, idCard,
      carPrefix, carNumber, remark,source,staffId 
    } = this.data;

    const formData = {
      roomValue,        // 房间号
      startTime,        // 开始时间
      endTime,          // 结束时间
      visitorPhoto,     // 访客照片
      visitorName,      // 访客姓名
      phone,            // 联系电话
      idCard,           // 身份证号
      carPrefix,        // 车牌前缀
      carNumber,        // 车牌号码
      remark,           // 备注信息
      source,           // 来源
      staffId           // 员工ID
    };

    // 简单校验（可根据需求完善）
    if (!roomValue || !startTime || !endTime || !visitorPhoto || !visitorName || !phone || !idCard) {
      wx.showToast({ title: "请填写必填项", icon: "none" });
      return;
    }
      const that = this;
      // 调用封装的 post 方法
      request.post('/dookmanager/visitor_record_lxy', formData)
        .then(res => {
          // 请求成功的处理逻辑
          console.log("*+-*/+-*")
          console.log(res)
          if (res.code === 200) { // 假设后端返回的 AjaxResult 里有 code 字段表示成功
            wx.showToast({
              title: '添加访客记录成功',
              icon: 'success',
              duration: 2000
            });
         wx.navigateBack()
          } else {
            wx.showToast({
              title: '添加失败：' + res.msg, // 假设后端返回 msg 字段提示错误信息
              icon: 'none',
              duration: 2000
            });
          }
        })
        .catch(err => {
          // 请求失败的处理逻辑
          wx.showToast({
            title: '网络请求错误',
            icon: 'none',
            duration: 2000
          });
          console.error('调用添加访客接口失败:', err);
        });
    

    // // 提交逻辑：调用后端接口，将数据上传
    // console.log("提交数据：", {
    //   roomValue, startTime, endTime,
    //   visitorPhoto, visitorName, phone, idCard,
    //   carNumber: carPrefix + carNumber,
    //   remark,
    // });

    // wx.showToast({ title: "提交成功", icon: "success" });
  },
  getHouseList() {
    const that = this;
    // 调用封装的 get 方法，这里的 url 要和后端接口路径对应
    request.get('/dookmanager/visitor_record_lxy/list11')
      .then(res => {
        console.log("*-**--*-**-*-*-*")
        console.log(res)
        // 请求成功的处理逻辑
        if (res.code === 200) { // 假设后端返回的 R 对象里有 code 字段表示成功，值为 200
          that.setData({
            roomList: res.data // 假设后端返回的数据在 res.data 里
          });
        } else {
          wx.showToast({
            title: '获取房屋列表失败：' + res.msg, // 假设后端返回 msg 字段提示错误信息
            icon: 'none',
            duration: 2000
          });
        }
      })
      .catch(err => {
        // 请求失败的处理逻辑
        wx.showToast({
          title: '网络请求错误',
          icon: 'none',
          duration: 2000
        });
        console.error('调用获取房屋列表接口失败:', err);
      });
  },
  onShow(){
    staff.getUserProfile().then(res=>{
      // console.log("*-*-")
      // console.log(res)
      this.setData({
        staffId:1002
      })
    })
    this.getHouseList()
  }
 
});